// 将一个多维数组  转换成一维数组
// 使用了reduce方法

let arr = [1, [1, 2], [3, 4], [7, [1, 2]], 1]

const flatten = arr => {
  return arr.reduce(function(prev, cur) { // reduce方法本身返回的一个累加器
    return prev.concat(Array.isArray(cur) ? flatten(cur) : cur)
  }, [])
}

console.log(flatten(arr))